// SPDX-FileCopyrightText: 2023-2025 Sangfor Technologies Inc.
// SPDX-License-Identifier: Mulan PSL v2
package validate

import (
	"code.geniusai.org/notebook-manager/pkg/entity"
	"gorm.io/gorm"
)

type NotebookStoreMock struct {
}

func (m *NotebookStoreMock) ListNotebook(option *entity.ProjectListOption) (int, []*entity.Notebook, error) {
	if option.UserID == "existUserID" {
		pageList := make([]*entity.Notebook, 0)
		notebooks := append(pageList, &entity.Notebook{Name: "existNotebookName"})
		return 1, notebooks, nil
	}
	return 0, nil, nil
}

func (m *NotebookStoreMock) CreateNotebook(db *gorm.DB, notebook *entity.Notebook) (*entity.Notebook, error) {

	return nil, nil
}

func (m *NotebookStoreMock) GetNotebook(id string) (*entity.Notebook, error) {
	return nil, nil
}

func (m *NotebookStoreMock) DeleteNotebook(id string) error {
	return nil
}
func (m *NotebookStoreMock) DeleteNotebookRecords(db *gorm.DB, userId string) error {
	return nil
}
func (m *NotebookStoreMock) GetNotebookByProjectId(db *gorm.DB, projectId string) ([]*entity.Notebook, error) {
	return nil, nil
}
func (m *NotebookStoreMock) UpdateNotebook(string, *entity.ModifyNotebook) error {
	return nil
}
func (m *NotebookStoreMock) UpdateNotebookActive(id string) error {
	return nil
}
func (m *NotebookStoreMock) GetInactiveExpire(int64) ([]*entity.Notebook, error) {
	return nil, nil
}
